package com.yxw.yxnet_cd_center.customer_service.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * @author liuxin
 * @date 2023.09.17
 */
@Data
@TableName("yx_sc_flow_rule")
@ApiModel("分流规则实体")
public class YxCsFlowRuleEntity implements Serializable {

    private static final long serialVersionUID = 91694940569743L;
    /*
     *规则ID
     */
    @TableId(value = "rule_id",type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "规则ID")
    private Long id;
    /*
     *状态 0:启用 1：禁用
     */
    @TableField("status")
    @ApiModelProperty(value = "状态 0:启用 1：禁用")
    private Integer status;
    /*
     *群ID
     */
    @TableField("flock_id")
    @ApiModelProperty(value = "群ID")
    private Long flockId;

    /*
     *所属工作组ID
     */
    @TableField("group_id")
    @ApiModelProperty(value = "所属工作组ID")
    private Long groupId;

    /*
     *规则
     */
    @TableField("rule_type")
    @ApiModelProperty(value = "规则")
    private Long ruleType;

    /*
     *规则编码
     */
    @TableField("rule_type_code")
    @ApiModelProperty(value = "规则编码")
    private String ruleTypeCode;
    /*
     *规则名称
     */
    @TableField("rule_type_name")
    @ApiModelProperty(value = "规则名称")
    private String ruleTypeName;

    /*
     *创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    private Date createTime;
    /*
     *创建人ID
     */
    @TableField("create_id")
    @ApiModelProperty(value = "创建人ID")
    private Long createId;
    /*
     *创建人名称
     */
    @TableField("create_name")
    @ApiModelProperty(value = "创建人名称")
    private String createName;

    /*
     *创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    @TableField("update_time")
    private Date updateTime;
    /*
     *更新人ID
     */
    @TableField("update_id")
    @ApiModelProperty(value = "更新人ID")
    private Long updateId;
    /*
     *更新人名称
     */
    @TableField("update_name")
    @ApiModelProperty(value = "更新人名称")
    private String updateName;

    /*
     *服务类型
     */
    @TableField("service_type")
    @ApiModelProperty(value = "服务类型")
    private Long serviceType;

    /*
     *服务类型名称
     */
    @TableField("service_type_name")
    @ApiModelProperty(value = "服务类型名称")
    private String serviceTypeName;

    /*
     *服务类型编号
     */
    @TableField("service_type_code")
    @ApiModelProperty(value = "服务类型编号")
    private String serviceTypeCode;

    /*
     *端口
     */
    @TableField("port_id")
    @ApiModelProperty(value = "端口")
    private Long portId;

    /*
     *端口编码
     */
    @TableField("port_code")
    @ApiModelProperty(value = "端口编码")
    private String portCode;
    /*
     *端口名称
     */
    @TableField("port_name")
    @ApiModelProperty(value = "端口名称")
    private String portName;

    /*
     *渠道
     */
    @TableField("channel_id")
    @ApiModelProperty(value = "渠道ID")
    private Long channelId;

    /*
     *端口编码
     */
    @TableField("channel_code")
    @ApiModelProperty(value = "渠道编码")
    private String channelCode;

    /*
     *渠道名称
     */
    @TableField("channel_name")
    @ApiModelProperty(value = "渠道名称")
    private String channelName;

}